//package com.jason;
//
//import com.baomidou.mybatisplus.toolkit.IdWorker;
//import com.jason.base.BaseProcess;
//import com.jason.entity.*;
//import com.jason.service.ITGoodsInfoPriceService;
//import com.jason.service.ITGoodsUnitService;
//import com.jason.service.ITImportInfoService;
//import jxl.Cell;
//import jxl.CellType;
//import jxl.Sheet;
//import jxl.Workbook;
//import jxl.read.biff.BiffException;
//import org.apache.commons.lang.StringUtils;
//import org.springframework.beans.factory.annotation.Autowired;
//
//import javax.servlet.http.HttpServletRequest;
//import java.io.File;
//import java.io.IOException;
//import java.util.ArrayList;
//import java.util.Date;
//import java.util.List;
//
//public class testImportExcel {
//
//    /**
//     * 读取excel文件基本步骤： 1.选取excel文件得到工作簿 2.选择工作表sheet 3.选择单元格cell 4.读取信息
//     *
//     * @throws IOException
//     * @throws BiffException
//     */
//    @Autowired
//    ITGoodsUnitService itGoodsUnitService;
//
//    @Autowired
//    ITImportInfoService itImportInfoService;
//
//    @Autowired
//    ITGoodsInfoPriceService itGoodsInfoPriceService;
//
//    public static void main(String[] args) throws Exception {
//
//
//    }
//
//    public Object test(Date date, HttpServletRequest request) throws IOException, BiffException {
//        InOrOutGoodsParams inOrOutGoodsParams = new InOrOutGoodsParams();
//        inOrOutGoodsParams.setType(0);
//        date.setDate(date.getDate() - 1);
//        inOrOutGoodsParams.setOperatedTime(date);
////        inOrOutGoodsParams.setUserId(itImportInfoService.getCurrentUserId(request));
//        List<InOrOutGoodsList> goodsList = new ArrayList<>();
//        List<TGoodsInfoPrice> insertPriceList = new ArrayList<>();
//        /*
//         * 选择excel文件，创建jxl.Workbook对象 方法：Workbook.getWorkbook()
//         */
//        Workbook book = Workbook.getWorkbook(new File(
//                "C:\\Users\\Administrator\\Desktop\\test (2).xls"));
//
//        /*
//         * 读取工作表 方法：getSheet...
//         */
//        Sheet sheet = book.getSheet(0);// 指定下标方式
//        // Sheet sheet = book.getSheet("sheetname");//指定名称方式
//        // String[] sheets = book.getSheetNames();// 工作表名称数组
//        // Sheet[] sheets = book.getSheets();//工作表对象数组
//        int rows = sheet.getRows();
//        System.out.println("行数" + rows);
//        System.out.println("列数" + sheet.getColumns());
//
//        for (int r = 0; r < rows-1; r++){
//            InOrOutGoodsList inOrOutGoodsList = new InOrOutGoodsList();
//            Long goodsId = IdWorker.getId();
//            Long priceId = IdWorker.getId();
//            TGoodsInfo tGoodsInfo = new TGoodsInfo();
//            tGoodsInfo.setId(goodsId);
//            tGoodsInfo.setPriceId(priceId);
//            for (int c = 0; c < 7; c++){
//                //从第二列算起
//                if (c > 0 ){
//                    /*
//                     * 读取单元格 方法：getCell param1：第几列 param2：第几行
//                     */
//                    Cell cell = sheet.getCell(c, r);
//                    /*
//                     * 读取单元格的值 方法：getContents()
//                     */
//                    String content = cell.getContents();
//                    //设置产品编码
//                    if (c == 1){
//                        tGoodsInfo.setCodeId(content);
//                    }
//                    //设置产品名称
//                    if (c == 2){
//                        tGoodsInfo.setGoodsName(content);
//                    }
//                    //设置基准单位
//                    if (c == 3){
//                        if (StringUtils.isBlank(content)){
//                            return BaseProcess.setErrorResult("单位不能为空");
//                        }
//                        TGoodsUnit queryUnitEntity = new TGoodsUnit();
//                        queryUnitEntity.setGoodsUnitName(content);
//                        try{
//                            Long goodsUnitId = itGoodsUnitService.selectOne(queryUnitEntity).getId();
//                            tGoodsInfo.setGoodsUnitId(goodsUnitId);
//                        } catch(Exception e){
//                            return BaseProcess.setErrorResult("商品单位不存在！");
//                        }
//                        tGoodsInfo.setGoodsName(content);
//                    }
//                    //设置期初数量
//                    if (c == 4){
//                        int count = Integer.valueOf(content);
//                        inOrOutGoodsList.setId(goodsId);
//                        inOrOutGoodsList.setCount(count);
//                        goodsList.add(inOrOutGoodsList);
//                    }
//                    //设置产品单价
//                    if (c == 5){
//                        try{
//                            TGoodsInfoPrice tGoodsInfoPrice = new TGoodsInfoPrice();
//                            tGoodsInfoPrice.setGoodsId(goodsId);
//                            tGoodsInfoPrice.setPrice(Float.valueOf(content));
//                            insertPriceList.add(tGoodsInfoPrice);
//                        } catch(Exception e){
//                            return BaseProcess.setErrorResult("第" + (r+1) + "行数据产品单价无效！");
//                        }
//
//                    }
//
//                    /*
//                     * 同样，可以获取到单元格的类型，返回的是CellType对象
//                     * 各种类型可以通过CellType.Type来调用，比如：CellType.LABEL
//                     */
//                    CellType type = cell.getType();
//                    if (type == CellType.NUMBER) {
//                        System.out.println("[debug]:这是文本单元格");
//                    }
//                }
//
//            }
//        }
//
//        /**
//         * 释放资源 当你完成对 Excel 电子表格数据的处理后，一定要使用 close()
//         * 方法来关闭先前创建的对象，以释放读取数据表的过程中所占用的内存空间，在读取大量数据时显得尤为重要
//         */
//        book.close();
//
//        inOrOutGoodsParams.setList(goodsList);
//        itGoodsInfoPriceService.insertOrUpdateBatch(insertPriceList, request);
//        return itImportInfoService.saveImportInfo(inOrOutGoodsParams, request);
//    }
//
//}
